Analysing Logic Programs Using 'Prop'-ositional Logic Programs and a Magic Wand
نویسندگان
چکیده
This paper illustrates the role of a class of \prop"-ositional logic programs in the analysis of complex properties of logic programs. Analyses are performed by abstracting Prolog programs to corresponding \prop"-ositional logic programs which approximate the original programs and have nite meanings. We focus on a groundness analysis which is equivalent to that obtained by abstract interpretation using the domain Prop. The main contribution is in the ease in which a highly eecient implementation of the analysis is obtained. The implementation is bottom-up and provides approximations of a program's success patterns. Goal dependent information such as call patterns is obtained using a magic-set transformation. A novel compositional approach is applied so that call patterns for arbitrary goals are derived in a precise and eecient way.
منابع مشابه
Analyzing Logic Programs Using \ Prop " -
This paper illustrates the role of a class of \prop"-ositional logic programs in the analysis of complex properties of logic programs. Analyses are performed by abstracting Prolog programs to corresponding \prop"-ositional logic programs which approximate the original programs and have nite meanings. We focus on a groundness analysis which is equivalent to that obtained by abstract interpretati...
متن کاملProof Pearl: Magic Wand as Frame
Separation logic is widely used to verify programs that manipulate pointers. It adds two connectives: separating conjunction ∗ (“star”) and its adjoint, separating implication −∗ (“magic wand”). Comparatively, separating conjunction is much more widely used. Many separation logic tools do not even support separating implication. Especially in interactive program verification or pen-paper proofs...
متن کاملOn the Almighty Wand
We investigate decidability, complexity and expressive power issues for (first-order) separation logic with one record field (herein called SL) and its fragments. SL can specify properties about the memory heap of programs with singly-linked lists. Separation logic with two record fields is known to be undecidable by reduction of finite satisfiability for classical predicate logic with one bina...
متن کاملLightweight Support for Magic Wands in an Automatic Verifier (Artifact)
This artifact is based on Silicon, which is an automatic verification tool for programs written in the Silver Intermediate Verification Language. Silver is designed to natively support permissionbased reasoning, in the style of separation logic and similar approaches. Our extension of Silicon provides support for specification and verification of programs using the magic wand operator, which ca...
متن کاملThe Effects of Adding Reachability Predicates in Propositional Separation Logic
The list segment predicate ls used in separation logic for verifying programs with pointers is well-suited to express properties on singly-linked lists. We study the effects of adding ls to the full propositional separation logic with the separating conjunction and implication, which is motivated by the recent design of new fragments in which all these ingredients are used indifferently and ver...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- J. Log. Program.
دوره 25 شماره
صفحات -
تاریخ انتشار 1993